package alo;

import java.util.HashSet;
import java.util.Scanner;

public class Main2 {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        int M= sc.nextInt();
        int N=sc.nextInt();
        int num=10;
        int[] nums=new int[M];
        for (int i = 0; i < M; i++) {
            nums[i]=i;
        }
        int n=0;
        HashSet<Integer> set=new HashSet<>();
        boolean flag=false;
        for (int i = 0; i < N; i++) {
            int A= sc.nextInt();
            int L= sc.nextInt();
            if (!set.contains(A)){
                set.add(A);
                n++;
            }
            if (!set.contains(L)){
                set.add(L);
                n++;
            }
            int c=A;
            while (nums[c]!=c){
                c=nums[c];
            }
            if (c!=nums[L]||c!=L){
                nums[L]=c;
            }else {
                flag=true;
            }
        }
        if (flag)num=num-2;
        num=num-M+n;
        if (num<0){
            System.out.println(0);
        }else {
            System.out.println(num);
        }
    }
}
